---
author: hongbo
date: "2019-11-18"
previewImg:
badge: testing
title: What's new in BuckleScript v7 (Part 1)
description: |
---

## New major dev release available

The new major version of BuckleScript is coming -[7.0.0-dev.1](https://github.com/BuckleScript/bucklescript/pull/3968) is now
released for testing!

We are maintaining `5.*` and `6.*` for OCaml `4.02` and `4.06` for a while,
since this release we are moving forward and focusing on release 7.\* (for OCaml
4.06).

This is a major release comes with lots of nice features listed
[here](https://github.com/BuckleScript/bucklescript/blob/master/Changes).

We talk about some highlights here

- refmt upgraded to latest, it comes with better error message

- OCaml Records compiled into JS objects

This is one of the most desired features, it is finally landed.

See the generated code below for excitement!

```reason
type t = {
  x: int,
  y: int,
  z: int,
};

let obj = {x: 3, y: 2, z: 2};

let obj2 = {...obj, y: 4};
```

```js
var obj2 = {
  x: 3,
  y: 4,
  z: 2,
};

var obj = {
  x: 3,
  y: 2,
  z: 2,
};
```

This new change makes record much more useful and its interaction with
`private` type; unboxed option type will make interop with JS much nicer!

As always, we continue improving our optimizer in various
[commits](https://github.com/BuckleScript/bucklescript/pull/3966/files?file-filters%5B%5D=.js),
we belive that not only a better language but also an implementation of high
quality is key to push typed functional programming into industry.

Happy hacking!
